rm(list=ls())
# install.packages("choroplethrMaps")
library(shiny)
library(ggplot2) 
library(plotly)
library(tidyr)
library(dplyr)
library(countrycode)
library(choroplethr)
library(readr)
global_temp <- 
  read.csv(
    "./tim/GlobalTemperatures.csv", 
    header = TRUE, 
    stringsAsFactors = FALSE,
    check.names = FALSE
  )

yearly_co2 <-
  read.csv(
    "./data/yearly_co2_emissions_1000_tonnes.csv",
    header = TRUE,
    stringsAsFactors = FALSE,
    check.names = FALSE
  )
global_temp <- select(global_temp, -c("LandAverageTemperatureUncertainty", "LandMaxTemperature",
                          "LandMaxTemperatureUncertainty", "LandMinTemperature", 
                         "LandMinTemperatureUncertainty", "LandAndOceanAverageTemperature",
                         "LandAndOceanAverageTemperatureUncertainty"))
#head(global_temp)
global_temp <- within(global_temp,
                    date <- ifelse(!is.na(as.Date(global_temp$dt, "%Y-%m-%d")),
                                   as.character(as.Date(global_temp$dt, "%Y-%m-%d")),
                                   as.character(as.Date(global_temp$dt, "%m/%d/%Y")))) 
#head(global_temp)
global_temp <- na.omit(global_temp)

global_temp_year <- global_temp %>%
  mutate(year = substring(date, 1, 4)) %>%
  group_by(year, LandAverageTemperature)

drop <- c("dt")
global_temp_year <- global_temp_year[!(names(global_temp_year) %in% drop)]
global_temp_year <- aggregate(global_temp_year$LandAverageTemperature, 
                     by=list(year=global_temp_year$year), 
                     FUN=mean, na.action = na.omit)
global_temp_year <- global_temp_year %>%
  mutate(LandAverageTemperature = x * 1.8 + 32)


drop <- c("x")
global_temp_year <- global_temp_year[!(names(global_temp_year) %in% drop)]
global_temp_year <- global_temp_year %>%
  filter(year >= 1850)
yearly_co2$continent <- countrycode(sourcevar = yearly_co2[, "country"],
                                    origin = "country.name",
                                    destination = "continent")
df_co2 <- yearly_co2 %>%
  pivot_longer(c('1850':'2012'), names_to = "year", 
               values_to = "co2_emissions") %>%
  select(country, continent, year, co2_emissions)
df_co2 <- na.omit(df_co2, cols=c("co2_emissions"))

global_co2 <- aggregate(df_co2$co2_emissions, 
                     by=list(year=df_co2$year), 
                     FUN=sum)
global_co2 <- global_co2 %>% mutate(co2_emissions = x)
drop <- c("x")
global_co2 <- global_co2[!(names(global_co2) %in% drop)]
global_temp_year
global_co2
co2_temp <- merge(global_temp_year, global_co2, by="year", all=TRUE)
co2_temp
gg <- ggplot(co2_temp, 
       aes(x=co2_emissions, y = LandAverageTemperature)) +
       geom_line() + 
       geom_point(aes(ids = year)) + 
       theme(
        axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5)
       ) 
Ignoring unknown aesthetics: ids
ggplotly(gg)
      # + scale_x_discrete(breaks=seq(1850, 2015, 10))
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpgYGB7cn0NCnJtKGxpc3Q9bHMoKSkNCiMgaW5zdGFsbC5wYWNrYWdlcygiY2hvcm9wbGV0aHJNYXBzIikNCmxpYnJhcnkoc2hpbnkpDQpsaWJyYXJ5KGdncGxvdDIpIA0KbGlicmFyeShwbG90bHkpDQpsaWJyYXJ5KHRpZHlyKQ0KbGlicmFyeShkcGx5cikNCmxpYnJhcnkoY291bnRyeWNvZGUpDQpsaWJyYXJ5KGNob3JvcGxldGhyKQ0KbGlicmFyeShyZWFkcikNCmBgYA0KDQpgYGB7cn0NCmdsb2JhbF90ZW1wIDwtIA0KICByZWFkLmNzdigNCiAgICAiLi90aW0vR2xvYmFsVGVtcGVyYXR1cmVzLmNzdiIsIA0KICAgIGhlYWRlciA9IFRSVUUsIA0KICAgIHN0cmluZ3NBc0ZhY3RvcnMgPSBGQUxTRSwNCiAgICBjaGVjay5uYW1lcyA9IEZBTFNFDQogICkNCg0KeWVhcmx5X2NvMiA8LQ0KICByZWFkLmNzdigNCiAgICAiLi9kYXRhL3llYXJseV9jbzJfZW1pc3Npb25zXzEwMDBfdG9ubmVzLmNzdiIsDQogICAgaGVhZGVyID0gVFJVRSwNCiAgICBzdHJpbmdzQXNGYWN0b3JzID0gRkFMU0UsDQogICAgY2hlY2submFtZXMgPSBGQUxTRQ0KICApDQpgYGANCg0KYGBge3J9DQpnbG9iYWxfdGVtcCA8LSBzZWxlY3QoZ2xvYmFsX3RlbXAsIC1jKCJMYW5kQXZlcmFnZVRlbXBlcmF0dXJlVW5jZXJ0YWludHkiLCAiTGFuZE1heFRlbXBlcmF0dXJlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkxhbmRNYXhUZW1wZXJhdHVyZVVuY2VydGFpbnR5IiwgIkxhbmRNaW5UZW1wZXJhdHVyZSIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICJMYW5kTWluVGVtcGVyYXR1cmVVbmNlcnRhaW50eSIsICJMYW5kQW5kT2NlYW5BdmVyYWdlVGVtcGVyYXR1cmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICJMYW5kQW5kT2NlYW5BdmVyYWdlVGVtcGVyYXR1cmVVbmNlcnRhaW50eSIpKQ0KI2hlYWQoZ2xvYmFsX3RlbXApDQpnbG9iYWxfdGVtcCA8LSB3aXRoaW4oZ2xvYmFsX3RlbXAsDQogICAgICAgICAgICAgICAgICAgIGRhdGUgPC0gaWZlbHNlKCFpcy5uYShhcy5EYXRlKGdsb2JhbF90ZW1wJGR0LCAiJVktJW0tJWQiKSksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzLmNoYXJhY3Rlcihhcy5EYXRlKGdsb2JhbF90ZW1wJGR0LCAiJVktJW0tJWQiKSksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzLmNoYXJhY3Rlcihhcy5EYXRlKGdsb2JhbF90ZW1wJGR0LCAiJW0vJWQvJVkiKSkpKSANCiNoZWFkKGdsb2JhbF90ZW1wKQ0KZ2xvYmFsX3RlbXAgPC0gbmEub21pdChnbG9iYWxfdGVtcCkNCg0KZ2xvYmFsX3RlbXBfeWVhciA8LSBnbG9iYWxfdGVtcCAlPiUNCiAgbXV0YXRlKHllYXIgPSBzdWJzdHJpbmcoZGF0ZSwgMSwgNCkpICU+JQ0KICBncm91cF9ieSh5ZWFyLCBMYW5kQXZlcmFnZVRlbXBlcmF0dXJlKQ0KDQpkcm9wIDwtIGMoImR0IikNCmdsb2JhbF90ZW1wX3llYXIgPC0gZ2xvYmFsX3RlbXBfeWVhclshKG5hbWVzKGdsb2JhbF90ZW1wX3llYXIpICVpbiUgZHJvcCldDQpnbG9iYWxfdGVtcF95ZWFyIDwtIGFnZ3JlZ2F0ZShnbG9iYWxfdGVtcF95ZWFyJExhbmRBdmVyYWdlVGVtcGVyYXR1cmUsIA0KICAgICAgICAgICAgICAgICAgICAgYnk9bGlzdCh5ZWFyPWdsb2JhbF90ZW1wX3llYXIkeWVhciksIA0KICAgICAgICAgICAgICAgICAgICAgRlVOPW1lYW4sIG5hLmFjdGlvbiA9IG5hLm9taXQpDQpnbG9iYWxfdGVtcF95ZWFyIDwtIGdsb2JhbF90ZW1wX3llYXIgJT4lDQogIG11dGF0ZShMYW5kQXZlcmFnZVRlbXBlcmF0dXJlID0geCAqIDEuOCArIDMyKQ0KDQoNCmRyb3AgPC0gYygieCIpDQpnbG9iYWxfdGVtcF95ZWFyIDwtIGdsb2JhbF90ZW1wX3llYXJbIShuYW1lcyhnbG9iYWxfdGVtcF95ZWFyKSAlaW4lIGRyb3ApXQ0KZ2xvYmFsX3RlbXBfeWVhciA8LSBnbG9iYWxfdGVtcF95ZWFyICU+JQ0KICBmaWx0ZXIoeWVhciA+PSAxODUwKQ0KYGBgDQoNCmBgYHtyfQ0KeWVhcmx5X2NvMiRjb250aW5lbnQgPC0gY291bnRyeWNvZGUoc291cmNldmFyID0geWVhcmx5X2NvMlssICJjb3VudHJ5Il0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW4gPSAiY291bnRyeS5uYW1lIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uID0gImNvbnRpbmVudCIpDQpkZl9jbzIgPC0geWVhcmx5X2NvMiAlPiUNCiAgcGl2b3RfbG9uZ2VyKGMoJzE4NTAnOicyMDEyJyksIG5hbWVzX3RvID0gInllYXIiLCANCiAgICAgICAgICAgICAgIHZhbHVlc190byA9ICJjbzJfZW1pc3Npb25zIikgJT4lDQogIHNlbGVjdChjb3VudHJ5LCBjb250aW5lbnQsIHllYXIsIGNvMl9lbWlzc2lvbnMpDQpkZl9jbzIgPC0gbmEub21pdChkZl9jbzIsIGNvbHM9YygiY28yX2VtaXNzaW9ucyIpKQ0KDQpnbG9iYWxfY28yIDwtIGFnZ3JlZ2F0ZShkZl9jbzIkY28yX2VtaXNzaW9ucywgDQogICAgICAgICAgICAgICAgICAgICBieT1saXN0KHllYXI9ZGZfY28yJHllYXIpLCANCiAgICAgICAgICAgICAgICAgICAgIEZVTj1zdW0pDQpnbG9iYWxfY28yIDwtIGdsb2JhbF9jbzIgJT4lIG11dGF0ZShjbzJfZW1pc3Npb25zID0geCkNCmRyb3AgPC0gYygieCIpDQpnbG9iYWxfY28yIDwtIGdsb2JhbF9jbzJbIShuYW1lcyhnbG9iYWxfY28yKSAlaW4lIGRyb3ApXQ0KYGBgDQoNCmBgYHtyfQ0KZ2xvYmFsX3RlbXBfeWVhcg0KZ2xvYmFsX2NvMg0KYGBgDQoNCmBgYHtyfQ0KY28yX3RlbXAgPC0gbWVyZ2UoZ2xvYmFsX3RlbXBfeWVhciwgZ2xvYmFsX2NvMiwgYnk9InllYXIiLCBhbGw9VFJVRSkNCmNvMl90ZW1wDQpgYGANCg0KYGBge3J9DQpnZyA8LSBnZ3Bsb3QoY28yX3RlbXAsIA0KICAgICAgIGFlcyh4PWNvMl9lbWlzc2lvbnMsIHkgPSBMYW5kQXZlcmFnZVRlbXBlcmF0dXJlKSkgKw0KICAgICAgIGdlb21fbGluZSgpICsgDQogICAgICAgZ2VvbV9wb2ludChhZXMoaWRzID0geWVhcikpICsgDQogICAgICAgdGhlbWUoDQogICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gOTAsIGhqdXN0ID0gMSwgdmp1c3QgPSAwLjUpDQogICAgICAgKSANCmdncGxvdGx5KGdnKQ0KYGBgDQo=